The present invention relates to a method, which is adopted in a positioning system based on satellites and is used for determining the position of a positioning receiver, as well as relates to the positioning receiver itself.
As a positioning system based on satellites, a GPS (Global Positioning System) developed by the US is widely used.
In the GPS, a GPS receiver receives diffusion codes and navigation messages including time information and locus information, from GPS satellites moving around the earth. The GPS receiver then calculates the position of the receiver itself. Finally, the GPS receiver displays the calculated position to the user.
To put it concretely, a diffusion code received by a receiver designed for the public is a spectrum diffusion signal referred to as a C/A (Clear and Acquisition) code in an L1 band of 1575.42 MHz.
A C/A code is typically obtained as a result of a BPSK (Binary Phase Shift Keying) modulation process carried out on a carrier with a frequency of 1,575.42 MHz by using a signal diffusing 50-bps (bits per second) data through the use of a PN (Pseudorandom Noise) code having a chip rate of 1.023 MHz and a code length of 1,023. An example of the PN code is a gold code. As shown at the top of FIG. 20, the C/A code comprises a repetition of diffusion codes (PN codes) at a period of 1,023 chips. The period of 1,023 chips is 1 msec in length.
The diffusion code varies from satellite to satellite. However, the receiver is capable of determining which satellite generates a received diffusion code. A satellite generates a diffusion code, which is assigned to the satellite, synchronously with an atomic clock employed in the satellite, and transmits the diffusion code.
As shown in FIG. 20, the data of a navigation message is transmitted at 50 bps, that is, 1 bit per 20 msec, which accommodate 20 periods of the diffusion code. For a bit with a value of 1, the 1,023 chips in one period of the diffusion code, that is, the 1,023 chips in 1 msec, are opposite to those for a bit with a value of 0.
A navigation message is transmitted in main-frame units. Each main frame having a duration of 30 seconds comprises five sub-frames, namely, first to fifth subframes. Each sub-frame having a duration of 6 seconds comprises 10 words (or 300 bits). Thus, each word has a duration of 600 msec and comprises 30 bits.
As shown in FIG. 21, the first and second words of each of the first to fifth sub-frames are a TLM (telemeter) word and a HOW (Handover Word) respectively.
The first word used as a TLM word includes a preamble at the first to eighth bits and a TLM message at the ninth to twenty-second bits. The preamble has a fixed prescribed pattern independent of the data included in the TLM message. The ninth bit and the twenty-second bit are referred to as MSB (Most Significant Bit) and LSB (Least Significant Bit) of the TLM message respectively.
The second word used as a HOW includes a TOW (Time of Week) count message at the first to seventeenth bits and a sub-frame ID, which is an identification code, at the twentieth to twenty-second bits. The first bit and the seventeenth bit are referred to as MSB and LSB of the TOW count message respectively.
In each satellite, the TOW count message, which is time information, is counted up every 6 seconds, beginning at a predetermined start time, synchronously with the atomic clock employed in the satellite. The period of 6 seconds is the duration of a sub-frame.
From the TOW count message, the receiver is capable of detecting the time, at which a diffusion code is transmitted from the satellite, every 6 seconds. During the period of 6 seconds, digits of the diffusion-code transmission time expressing a number equal to or greater than 1 msec are generated on the basis of an epoch or a data acquisition time interval of 1 msec obtained in a process of demodulating information on a locus.
In addition, since the period of a diffusion code is 1 msec in length, the phase of the diffusion code corresponds to the value of the digits of the diffusion-code transmission time expressing a number smaller than 1 msec. Thus, by detecting the phase of the diffusion code, it is possible to confirm the pattern of the digits of the diffusion-code transmission time expressing a number smaller than 1 msec.
The TOW count message is received for every sub-frame, which has a duration of 6 seconds. In actuality, however, in order to confirm the information on time, it is necessary to recognize the head of the sub-frame and acquire data A corresponding to the TOW count message. In addition, it is necessary to further acquire data B corresponding to the TOW count message at a location, which is considered to be the next sub-frame, and to verify that the equation B=A+1 holds true. By carrying out these operations, the boundary between the sub-frames and the time information are confirmed at the same time.
For this reason, after the receiver is activated, it takes at least about 6 seconds to confirm the transmission time of a diffusion code. When the receiver receives data, starting with that in the middle of a sub-frame, it takes up to about 12 seconds to confirm the transmission time of a diffusion code.
Locus information unique to each satellite is inserted into the third and subsequent words of 3 sub-frames, namely, the first to third sub-frames, transmitted by the satellite. The unique locus information is referred to as ephemeris information. Locus information common to all satellites is inserted into the third and subsequent words of 2 sub-frames, namely, the fourth to fifth sub-frames, transmitted by the satellites. The common locus information is referred to as almanac information.
The ephemeris information is a parameter used for finding the locus of a satellite transmitting the ephemeris information. The ephemeris information is locus information having high precision. The ephemeris information is transmitted by the satellite repeatedly for each main frame and updated in a relatively frequent manner in accordance with control executed by a control station located on the ground.
The receiver stores the ephemeris information in a memory to be used for calculation of the position of the receiver. From the precision point of view, however, the life of the ephemeris information or the period in which the ephemeris information can be used is only about 2 hours. For this reason, it is necessary to monitor the time lapsing since a point of time at which the ephemeris information is stored in the memory. As the length of the monitored time exceeds the life of the ephemeris information, the information stored in the memory is updated by storing new ephemeris information.
In order to acquire new ephemeris information to be used for updating that stored in the memory, however, at least 3 sub-frames, that is, the first to third sub-frames with a total duration of 18 seconds are required. When the receiver receives data, starting with that in the middle of the main frame, it takes up to about 30 seconds corresponding to the duration of a main frame to update the ephemeris information stored in the memory.
The almanac information includes information showing approximate positions of all satellites and information indicating which satellites can be used. In order to obtain the entire almanac information, data of 25 main frames or a master frame with a duration of 750 seconds is required. The almanac information is locus information updated at intervals of several days in accordance with control executed by a control station located on the ground.
The life of the almanac information is several months. If the almanac information is stored in a memory employed in the receiver, normally, the information is updated at intervals of several months. By storing the almanac information in a memory employed in the receiver, it is possible to determine which satellite is to be assigned to any channel after the power supply is turned on.
In the calculation of a position, as shown in FIGS. 22A and 22B, symbol ti denotes the diffusion-code transmission time for the ith satellite Si, symbol Xi (ti) denotes the position (or the 3-dimensional coordinates) of the satellite Si at the time ti and symbol tr denotes a value measured by a clock in a receiver 1. The measured time is a time at which the diffusion code transmitted by the satellite Si is received by the receiver 1. In addition, symbol Xo denotes the position (or the 3-dimensional coordinates) of the target receiver 1. The distance from the satellite Si to the receiver 1 is expressed by Eq. (91) where symbol c denotes the velocity of light in a vacuum.
It is to be noted that the position Xi (ti) of the satellite Si is a vector expressed by Eq. (92) where symbol T at the right end of the expression on the right-hand side of the equation indicates that the expression on the right-hand side of the equation is a transpose vector. The position Xi (ti) of the satellite Si is obtained from the ephemeris information described above. The position Xo of the receiver 1 is a vector expressed by Eq. (93) where symbol T at the right end of the expression on the right-hand side of the equation indicates that the expression on the right-hand side of the equation is a transpose vector. Symbol xcfx84 denotes an error of the clock employed in the receiver 1.
The satellites use a common time generated by atomic clocks employed in the satellites. A signal originated from each of the satellites is transmitted from the satellite synchronously with the atomic clock. However, a time indicated by the clock in the receiver has an error xcfx84 relative to the corresponding time of the satellites. Thus, Eq. (91) includes 4 unknown quantities, namely, xo, yo, zo and xcfx84.
Thus, the equation expressed by Eq. (91) needs to be established for at least 4 satellites, that is, for i=1 to 4, as shown by Eqs. (91a) to (91d). By solving the simultaneous equations (91a) to (91d), the 3-dimensional coordinates xo, yo and zo of the receiver can be found.
The simultaneous equations (91a) to (91d) are each a quadratic equation including no term representing a product of different unknown quantities. In general, the simultaneous equations (91a) to (91d) can be solved by assuming proper initial values close to the solutions and then applying an iteration method such as Newton""s method. Newton""s method is a method by which a given equation is approximated as a linear equation locally at a point close to the solution to the given equation. Thus, in this case, linear simultaneous equations are initially solved by using initial values. Then, the resulting solutions are used as next initial values to again find next solutions. This process is repeated iteratively till the solutions converge to values with errors in a predetermined range in order to find the final solutions.
In accordance with the conventional method to calculate the value of a measured position as described above, however, the diffusion-code transmission time ti of each satellite Si is confirmed, the position Xi (ti) of each satellite Si is then found and, finally, the 3-dimensional coordinates of the receiver are calculated by solving the simultaneous equations (91a) to (91d). Thus, in a condition where the latest TOW count message cannot be obtained or a condition where a signal transmitted by each of the satellites is weak, information on a locus cannot be modulated in spite of the fact that the phase of the diffusion code has been obtained. An example of the condition where the latest TOW count message cannot be obtained or the condition where a signal transmitted by each of the satellites is weak is a condition immediately following activation of the receiver. In a condition where an epoch of a 1-msec unit cannot be obtained, the digits of the diffusion-code transmission time expressing a number equal to or greater than 1 msec cannot be confirmed so that it is impossible to obtain an accurate diffusion-code transmission time ti. As a result, the 3-dimensional coordinates of the receiver cannot be calculated.
It is thus an object of the present invention to provide a positioning calculation method that can be adopted for calculating the position of a receiver even in a condition where the latest information on time cannot be obtained or a condition where the diffusion-code transmission time of a satellite cannot be confirmed because a signal transmitted by the satellite is weak such as a condition immediately following activation of the receiver.
According to an aspect of the present invention, a positioning receiver includes:
phase confirmation means for receiving a signal from each of at least five satellites, locus information of each of which has been received, and confirming the phase of a diffusion code in a condition where the locus information has been obtained from each of the satellites as well as an approximate present time and an approximate position of a receiver is already known; and
coordinate calculation means for establishing at least five simultaneous equations for the at least five satellites respectively to represent a relation between the positions of each of the satellites as well as the receiver and a time required by the diffusion code to arrive at the receiver, and solving the at least five simultaneous equations in order to calculate 3-dimensional coordinates of the receiver.
The at least five simultaneous equations include at least five unknown quantities, namely, a reference time, an error of a clock for measuring a diffusion-code reception time for each of the satellites and the 3-dimensional coordinates of the receiver.
The diffusion code is transmitted from each of the satellites at a diffusion-code transmission time expressed as a sum of a time having a value represented by digits expressing a number equal to or greater than one unitary time corresponding to one period of the diffusion code and a time having a value represented by digits expressing a number smaller than the unitary time.
The time represented by the digits expressing a number equal to or greater than the unitary time is represented by a sum of the reference time which is a time common to all the satellites and a differential time which varies from satellite to satellite.
According to another aspect of the present invention, there is provided a positioning calculation method for calculating 3-dimensional coordinates of a receiver in a condition where signals are received from at least five satellites, the phase of a diffusion code and locus information have been obtained from each of the satellites, an approximate present time has been obtained and an approximate position of the receiver is already known.
The positioning calculation method establishes at least five simultaneous equations for the at least five satellites respectively to represent a relation between the positions of each of the satellites as well as the receiver and a time required by the diffusion code to arrive at the receiver, and solves the at least five simultaneous equations in order to calculate 3-dimensional coordinates of the receiver.
The at least five simultaneous equations include at least five unknown quantities, namely, a reference time, an error of a clock for measuring a diffusion-code reception time for each of the satellites and the 3-dimensional coordinates of the receiver.
The diffusion code is transmitted from each of the satellites at a diffusion-code transmission time expressed as a sum of a time having a value represented by digits expressing a number equal to or greater than one unitary time corresponding to one period of the diffusion code and a time having a value represented by digits expressing a number smaller than the unitary time.
The time represented by the digits expressing a number equal to or greater than the unitary time is represented by a sum of the reference time which is common to all the satellites and a differential time which varies from satellite to satellite.
In accordance with the present invention, even in a condition where the latest time information cannot be obtained or a condition where a signal transmitted by each of the satellites is weak such as a condition immediately following activation of the receiver so that the diffusion-code transmission times of the satellites cannot be confirmed, the position of a receiver can be found. Thus, immediately following activation of the receiver, the time to the first positioning can be shortened substantially and, in a condition where a signal transmitted by each of the satellites is weak, the improvement of the positioning rate can be realized.
In addition, if the positioning calculation process is carried out only at a request made by the user in order to reduce the power consumption, the operating time of the receiver can be shortened so that the power consumption can be indeed reduced.